package com.armani.service.impl;

import com.armani.entity.Admin;
import com.armani.mapper.AdminMapper;
import com.armani.service.AdminService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * @ProjectName: armani
 * @Package: com.armani.service.impl
 * @ClassName: AdminServiceImpl
 * @Description: 管理员接口实现类
 * @Author: lenovo
 * @Date: 2021/11/29 0:26
 * @Version: 1.0
 **/
@Service
public class AdminServiceImpl implements AdminService {
    @Autowired
    private AdminMapper adminMapper;

    /**
     * 管理员登录
     *
     * @param user     用户名
     * @param password 密码
     * @return 管理员集合（符合条件）
     * @throws Exception 抛出异常
     */
    @Override
    public List<Admin> login(String user, String password) throws Exception {
        return adminMapper.login(user, password);
    }

    /**
     * 添加管理员
     *
     * @param user     用户名
     * @param password 密码
     * @param play     角色
     * @param name     姓名
     * @param phone    电话
     * @param power    权力
     * @param state    状态（0-锁定，1-正常）
     * @return 影响行
     * @throws Exception 抛出异常
     */
    @Override
    public Integer insert(String user, String password, String play, String name, String phone, String power, String state) throws Exception {
        return adminMapper.insert(user, password, play, name, phone, power, state);
    }

    /**
     * 编辑管理员信息
     *
     * @param id       要修改的管理员id
     * @param user     修改后的用户名
     * @param password 修改后的密码
     * @param play     修改后的角色
     * @param name     修改后的姓名
     * @param phone    修改后的电话
     * @param power    修改后的权力
     * @param state    修改后的状态（0-锁定，1-正常）
     * @return 影响行
     * @throws Exception 抛出异常
     */
    @Override
    public Integer update(Integer id, String user, String password, String play, String name, String phone, String power, String state) throws Exception {
        return adminMapper.update(id, user, password, play, name, phone, power, state);
    }

    /**
     * 删除管理员
     *
     * @param id 要删除管理员的id
     * @return 影响行
     * @throws Exception 抛出异常
     */
    @Override
    public Integer del(Integer id) throws Exception {
        return adminMapper.del(id);
    }
}
